package com.fary.po;

import cn.hutool.core.util.NumberUtil;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.Objects;

/**
 * 定时任务
 */
@Data
@TableName("corntask")
public class CornTask implements Comparable<CornTask>, Serializable {

    /**
     * 主键ID
     */
    @TableId
    private String cornid;

    /**
     * corn表达式
     */
    private String corn;

    /**
     * 描述
     */
    private String corndesc;

    /**
     * 开关 T 开 F 关
     */
    private String enable;

    /**
     * 创建时间
     */
    private Date createtime;

    /**
     * 修改时间
     */
    private Date updatetime;

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        CornTask cornTask = (CornTask) o;
        return Objects.equals(cornid, cornTask.cornid) && Objects.equals(corn, cornTask.corn) && Objects.equals(enable, cornTask.enable);
    }

    @Override
    public int hashCode() {
        return Objects.hash(cornid, corn, enable);
    }

    @Override
    public int compareTo(CornTask o) {
        return NumberUtil.sub(this.getCornid(), o.getCornid()).intValue();
    }
}
